前言:再次读,一样的内容,不一样的感悟。
第一章 熟悉Objective-C
在类的头文件中尽量少引进其它头文件
在类的头文件中如果引入其它头文件,那么当前类的头文件被引入时之前引入的头文件也会被同时引入,这将大大延长项目的编译时间,并且能降低类之间的耦合。
优化: 如果当前头文件涉及到其它类时仅仅只声明时,可以使用@class
声明欲引用的类,在.m
文件中引入类的头文件(向前声明)。对协议而言,尽量将遵守协议的声明移至分类中,再不行,就把协议放在单独的文件中在引入。
多用字面量语法(语法糖)
字面量语法多用于Foundation
框架中的类。使用字面量语法可以有效缩减源代码长度,更加简洁易读。
|
|
使用字面量创建数组、字典时,需要断定值的非空性,否则会抛出异常。使用语法糖创建的字典、数组时应该通过下标操作元素。
多用类型常量 少用#define
常量的定义尽可能的避免#define
,用#define
定义的内容是在编译前进行内容替换。
如果定义的常量尽在当前编译单元(实现文件)内有效,那么在此常量前加k
标明。如下:
static const NSString *name = @"kenny best";
如果定义的常量在多个编译单元时,那么这个常量将放在全局符号表中,使用 extern
去声明,并在对应的实现文件中定义值,通常还会以类名作为前缀用于区分。
在.h
中extern cosnt NSString *name;
声明,
在.m
中const NSString *name = @"kenny best";
定义
类型常量声明的时候已经确定类型,并且添加限制,可以借助编译器来确保常量正确。
使用枚举表示状态、选项
马上更新。